package com.cqfae.deploycentral.app.web.vo;

import com.cqfae.deploycentral.app.dao.entity.FileSync;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * Created by JIANGLU009 on 2017/11/6.
 */
public class FileSyncVo implements Serializable {

    private Long id;

    private String areaCode;

    private String areaCodeStr;

    private String interiorAreaCode;

    private String interiorAreaCodeStr;

    private String name;

    private String typeCode;

    private String typeCodeStr;

    private String uploadStatusCode;

    private String uploadStatusCodeStr;

    private String syncStatusCode;

    private String syncStatusCodeStr;

    private String fileId;

    private String fileName;

    private String fileType;

    private String createBy;

    private List<FileSyncFileVo> fileList;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    private String updateBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    public FileSyncVo() {
        super();
    }

    public FileSyncVo(FileSync model) {
        setId(model.getId());
        setAreaCode(model.getAreaCode());
        setInteriorAreaCode(model.getInteriorAreaCode());
        setName(model.getName());
        setTypeCode(model.getType());
        setUploadStatusCode(model.getUploadStatus());
        setSyncStatusCode(model.getSyncStatus());
        setCreateBy(model.getCreateBy());
        setCreateTime(model.getCreateTime());
        setUpdateBy(model.getUpdateBy());
        setUpdateTime(model.getUpdateTime());
    }

    public FileSync parseModel() {
        FileSync info = new FileSync();
        info.setId(getId());
        info.setAreaCode(getAreaCode());
        info.setInteriorAreaCode(getInteriorAreaCode());
        info.setName(getName());
        info.setType(getTypeCode());
        info.setUploadStatus(getUploadStatusCode());
        info.setSyncStatus(getSyncStatusCode());
        info.setCreateBy(getCreateBy());
        info.setCreateTime(getCreateTime());
        info.setUpdateBy(getUpdateBy());
        info.setUpdateTime(getUpdateTime());
        return info;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    public String getAreaCodeStr() {
        return areaCodeStr;
    }

    public void setAreaCodeStr(String areaCodeStr) {
        this.areaCodeStr = areaCodeStr;
    }

    public String getInteriorAreaCode() {
        return interiorAreaCode;
    }

    public void setInteriorAreaCode(String interiorAreaCode) {
        this.interiorAreaCode = interiorAreaCode;
    }

    public String getInteriorAreaCodeStr() {
        return interiorAreaCodeStr;
    }

    public void setInteriorAreaCodeStr(String interiorAreaCodeStr) {
        this.interiorAreaCodeStr = interiorAreaCodeStr;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getTypeCode() {
        return typeCode;
    }

    public void setTypeCode(String typeCode) {
        this.typeCode = typeCode;
    }

    public String getTypeCodeStr() {
        return typeCodeStr;
    }

    public void setTypeCodeStr(String typeCodeStr) {
        this.typeCodeStr = typeCodeStr;
    }

    public String getUploadStatusCode() {
        return uploadStatusCode;
    }

    public void setUploadStatusCode(String uploadStatusCode) {
        this.uploadStatusCode = uploadStatusCode;
    }

    public String getUploadStatusCodeStr() {
        return uploadStatusCodeStr;
    }

    public void setUploadStatusCodeStr(String uploadStatusCodeStr) {
        this.uploadStatusCodeStr = uploadStatusCodeStr;
    }

    public String getSyncStatusCode() {
        return syncStatusCode;
    }

    public void setSyncStatusCode(String syncStatusCode) {
        this.syncStatusCode = syncStatusCode;
    }

    public String getSyncStatusCodeStr() {
        return syncStatusCodeStr;
    }

    public void setSyncStatusCodeStr(String syncStatusCodeStr) {
        this.syncStatusCodeStr = syncStatusCodeStr;
    }

    public String getFileId() {
        return fileId;
    }

    public void setFileId(String fileId) {
        this.fileId = fileId;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public List<FileSyncFileVo> getFileSyncFileVo() {
        return fileList;
    }

    public void setFileSyncFileVo(List<FileSyncFileVo> fileSyncFileVo) {
        this.fileList = fileSyncFileVo;
    }

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName;
    }

    public String getFileType() {
        return fileType;
    }

    public void setFileType(String fileType) {
        this.fileType = fileType;
    }

    public List<FileSyncFileVo> getFileList() {
        return fileList;
    }

    public void setFileList(List<FileSyncFileVo> fileList) {
        this.fileList = fileList;
    }

}
